home *** CD-ROM | disk | FTP | other *** search
/ Network Support Library / RoseWare - Network Support Library.iso / apidev / tpapi.exe / DOCS / HISTORY.DOC < prev    next >
Text File  |  1994-01-14  |  15KB  |  387 lines

  1.               *************************************************
  2.               * Turbo Pascal API's for Novell Netware (TPAPI) *
  3.               *************************************************
  4.  
  5.       TPAPI (c) Copyr. 1991 - 1994 Antonio Covelli ALL RIGHTS RESERVED
  6.  
  7.  
  8. VERSION CHANGES (reverse chronological order)
  9. ===============
  10.  
  11. Version 1.53 - Released 14th January, 1994
  12.  
  13. * Added a messagebox when IPX/NETX cannot be detected under Windows. Thanks
  14.   go to Richard Meatyard [100064,1200] for this suggestion.
  15.  
  16. * Added a change to JobStructure (NWVAR) so that you can setup the banner
  17.   page amongst other things. Many thanks go to Juergen  Poganatz [100103,2004]
  18.   who provided this information.
  19.  
  20. * Added new function AddText to NetwareOBJ. This allows text to be added to
  21.   types of CHAR or BYTE.
  22.  
  23. * Changed JobStructure.TextJobDescription (NWVAR) to be TChar50Array.
  24.  
  25. * Cleaned up several API's within NWPRINT.
  26.  
  27. * Started to add comments to the source code in the INTERFACE section. This
  28.   can be read by D.J.Murdoch's SCANHELP program. Refer to SRCDOC.DOC for more
  29.   information.
  30.  
  31. * Renamed JobStruct to JobStruct286 and created new 386 structure called
  32.   JobStructure.
  33.  
  34. * Added 386 equivalent functions of QUEUE services (NWQUEUE). These are the
  35.   same as the 286 equivalents but end in 2.
  36.  
  37. * Added new function for converting PASCAL strings to ASCIIZ and adding the
  38.   product to the request buffer - AddPASCALToASCIIZStr (NETWARE).
  39.  
  40. * Renamed AddString to AddPASCALString (NETWARE).
  41.  
  42. * Fixed minor problem in GetConnectionsOpenFiles (NWFSSERV).
  43.  
  44. --------------------------------------------------------------------------------
  45.  
  46. Version 1.52 - Not released - Internal version
  47.  
  48. * Merged SerialOBJ into FileServerOBJ in line with the Client Assembly Docs.
  49.  
  50. * Removed NCPConnRequest and added ConnectionHandle parameter to NCPRequest.
  51.  
  52. * Added GetPASCALString to NETWARE for getting PASCAL style strings from the
  53.   buffer. Renamed GetString to GetASCIIZString.
  54.  
  55. * Fixed bug in GetSearchOrderFromDriveLetter (NETWARE).
  56.  
  57. * Removed parameter CommentLen from SubmitAccountNote (NWACCNTG) as it is not
  58.   needed.
  59.  
  60. * Added parameter ConnectionHandle to VLMTransportCall. If you wish to use
  61.   the default file server then pass the constant NWDEFCONNHANDLE.
  62.  
  63. * Removed LogReq from NetwareOBJ. (Not needed anymore).
  64.  
  65. * Renamed LoginToFileServer to LoginObject (NWCONN).
  66.  
  67. * Merged FileServiceOBJ and DirectoryOBJ objects and called them FileSystemOBJ
  68.   after the Client Assembly API. This will result in smaller code. Renamed
  69.   NWDIR.PAS to NWFSYST.PAS.
  70.  
  71. * Renamed CreateQueueJobAndFile to CreateQueueJobAndFileText and created a new
  72.   method CreateQueueJobAndFileBinary. The former uses FileOfText while the
  73.   latter uses FileOfByte.
  74.  
  75.   The above applies to all ???QueueJobAndFile API's within NWQUEUE.  If someone
  76.   knows a better way of doing this then let me know.  Thanks.
  77.  
  78. * Changed some of the API's in NWSYNCH to return result codes.
  79.  
  80. * Created new object ExtAttrOBJ. This object deals with the extended attributes
  81.   available within Netware.
  82.  
  83. * Updated GetObjectConnectionNumbers to use NCP and renamed to
  84.   GetObjectConnectionList.
  85.  
  86. * Updated GetDirInfo to use NCP and renamed to GetDirectoryInformation.
  87.  
  88. * Fixed bug in ScanDirRestrictions (NWDIR) in that it returned the wrong
  89.   information and GPI'd in DPMI/WINDOWS.
  90.  
  91. * Finished implementing the DPMI access to the VLM shells.  Many thanks go to
  92.   Julian Bucknell for pointing me in the right direction. There is still a lot
  93.   of work involved in getting all the functionality in place.
  94.  
  95. * Added new api's to NWFSERV :
  96.  
  97.     1) SetFileAttributes
  98.  
  99. * Changed function LoginToFileServerEncrypted to Novell's name of KeyedLogin.
  100.  
  101. * Fixed minor bug in GetEncryptedKey. I do not need to swap the ObjectID
  102.   around.
  103.  
  104. * Added the rest of the code to the example KeyPass. Sorry for that glaring
  105.   omission.
  106.  
  107. * Fixed small omission in ScanFileDirectoryExtTrustee (NWDIR).
  108.  
  109. * Just thought I would tell you why I am converting the library to use
  110.   request/receive packets :
  111.  
  112.   The NCP is a transport mechanism for sending API calls to a file server.
  113.   This method allows the developer to send raw packets to a server. If the
  114.   packet contents are invalid then the server can do several things :
  115.  
  116.     1) Issue an invalid packet error
  117.     2) Issue an unsupported API error
  118.     3) Crash & burn (not literally).
  119.  
  120.   Novell is now publishing it's API's in the new request/receive packet and I
  121.   am following suit. This will allow me to do a couple of very important tasks
  122.  
  123.     1) Maintain a common set of API's regardless of whether the VLM or NETX
  124.        clients are running since both clients use the same packet structures.
  125.     2) It is easier to code the API's for DPMI/WINDOWS modes when requiring
  126.        request/receive packets.
  127.     3) Novell has stated that development on NETX has ceased (refer to Novell's
  128.        Client API for Assembly documentation).
  129.  
  130. --------------------------------------------------------------------------------
  131.  
  132. Version 1.51 - Released 1st September, 1993
  133.  
  134. * Changed bug in GetVolumeName (NWDIR) so that the volumename is correctly
  135.   returned. Also changed to the NCP (F2) protocol.
  136.  
  137. * Implemented ConvertPathToDirectoryEntry in NETWARE.
  138.  
  139. * Implemented MapDirectoryNumberToPath in NETWARE.
  140.  
  141. * Moved duplicate functions ScanBinderyObjectTrusteePaths from NWBINDRY &
  142.   NWDIR to NETWARE.  Also changed it to use the NCP (F2) protocol.
  143.  
  144. * Changed GetServerInformation (NWFSSERV) to use the NCP (F2) protocol.
  145.  
  146. * Added ScanFileDirectoryExtTrustee API to NWDIR.  This also uses the NCP (F2)
  147.   protocol.
  148.  
  149. * Changed Rights parameter in GetEffectiveRights to be TrusteeRights.
  150.  
  151. * Added AddExtTrusteeFileDirectoryTrustee API to NWDIR.  This also use the
  152.   NCP (F2) protocol.
  153.  
  154. * Added Netware v3.11 support for GetConnectionsOpenFiles in NWDIR.
  155.  
  156. * Started optimizing certains portions of code within NETWARE.  Many thanks
  157.   go to Peter Sawatzki for prompting me to look into this.
  158.  
  159. * Removed FileServiceRequest from NETWARE.  This is exactly the same as
  160.   NCPRequest except that the buffer lengths are passed before their
  161.   respective buffers.
  162.  
  163. * Fixed bug in _IPXInitialise that would stop it from working with the
  164.   older shells.
  165.  
  166. * Fixed bug in GetVolumeInfoWithNumber (NWDIR) in that it would not work in
  167.   DPMI mode.
  168.  
  169. * Fixed bug in MapFakeRoot (NWWRKSTN) in that it would not work in DPMI mode.
  170.  
  171. * Removed ServerRequest from NETWARE and renamed ServerReq to ServerRequest.
  172.  
  173. * Added support for KeyedChangePassword, KeyedVerifyPassword.  See example
  174.   KEYPASS for additional info.
  175.  
  176. * Changed all BinderyOBJ methods to use the NCP (F2) protocol. This will allow
  177.   proper interfacing to the VLM once I activate the 2F facility.
  178.  
  179. * Started changing all the API's to use the NCP (F2) protocol.  This method
  180.   uses Request, Receive buffers for most (if not all) of the calls.
  181.  
  182. --------------------------------------------------------------------------------
  183.  
  184. Version 1.50 - Released : 1st July, 1993
  185.  
  186. * Encrypted password support is now available thanks to Barry Nance.  Barry
  187.   has kindly allowed me to incorporate his ELOGON source code into TPAPI.
  188.   The source (in NWENCRYP) was from Software Corner, Byte Magazine.
  189.  
  190. * Changed all declared TYPES in NWVAR.  The following example show the change
  191.  
  192.       ObjectNameType    ->     TObjectName
  193.       PathNameType      ->     TPathName
  194.  
  195.   This way of declaring TYPES seems to be more or less a standard in the
  196.   industry.
  197.  
  198. * TPAPI is now DPMI/REAL mode compatible!  I have done some preliminary
  199.   testing under Windows and have found no problems so far.
  200.  
  201. * Changed the following object names :
  202.  
  203.       ConnectOBJ        ->     ConnectionOBJ
  204.       FServOBJ          ->     FileServiceOBJ
  205.       SynchOBJ          ->     SynchronisationOBJ
  206.       WorkStatOBJ       ->     WorkStationOBJ
  207.  
  208. * Added lots of examples to do some of the more difficult things in Netware.
  209.   E.G.  Printing to LPT ports, printing directly to queues, using semaphores
  210.   and getting workstation information.
  211.  
  212. --------------------------------------------------------------------------------
  213.  
  214. Version 1.44 - Not released : Internal version
  215.  
  216. * Changed ConvertNodeAddress, ConvertNetworkNumber to be functions.
  217.  
  218. * Added dynamic allocation of the request/receive buffers.  When initialising
  219.   objects if you pass true then the buffers are allocated and deallocated for
  220.   each method, if you pass in false then they are allocated once and
  221.   deallocated when you call the object's done method.
  222.  
  223.   The second method is faster but the memory is always taken up whereas in
  224.   the first option you only use the memory when calling a TPAPI api.
  225.  
  226. --------------------------------------------------------------------------------
  227.  
  228. Version 1.43 - Not released : Internal version
  229.  
  230. * Changed ExamineSemaphore (SemaphoreValue), OpenSemaphore (IntialValue) to
  231.   be of type INTEGER.  Semaphore values can be negative as well as positive.
  232.  
  233. * Instead of using PObjectListing I have now changed all methods to use
  234.   PStringCollections for efficency.  The collections are all SORTED as they
  235.   are generated.
  236.  
  237.   Basically you need to include the OBJECTS unit in your USES clause.  To
  238.   see more information check out the BINDLIS1.PAS file.
  239.  
  240.   Please consult your Turbo Vision manual for more technical information on
  241.   collections.
  242.  
  243. * Removed data type Set_Capture_Flags from NWVAR as it is not used anywhere.
  244.  
  245. * Added capability to handle fake roots.  Requires NETX.* v3.0 or later.
  246.   MAPFAKEROOT, DELETEFAKEROOT and GETRELATIVEDRIVEDEPTH can be found in
  247.   NWWRKSTN.
  248.  
  249. * Added fake root capability to MISCMAPDRIVE in NWMISC.
  250.  
  251. --------------------------------------------------------------------------------
  252.  
  253. Version 1.42 - Not Released : Internal version
  254.  
  255. * Changed constant BF_SET in NWVAR to be $02.
  256.  
  257. * Fixed problem in SCANPROPERTY in NWBINDRY so that the next sequence number
  258.   returned is correct.
  259.  
  260. * Moved constant HexCharacterSet into HexString function. (NETWARE)
  261.  
  262. * Started on the long road to DPMI compliance with a lot of help from
  263.   Mark Edington (Borland, Inc USA).
  264.  
  265. * Within NWQUEUE changed all references to FileOfByte to FileOfText.
  266.  
  267. * Fixed bug within GetQueueJobList (NWQUEUE) which was that the number of jobs
  268.   within a queue were not all correctly returned.
  269.  
  270. * Added function GetTPAPIVersion (NETWARE) which returns a string containing
  271.   the version and release date of TPAPI.
  272.  
  273. --------------------------------------------------------------------------------
  274.  
  275. Version 1.41 - Released : 19th February, 1993
  276.  
  277. * Recompiled under Turbo Pascal 7.0 (REAL mode only).
  278.  
  279. --------------------------------------------------------------------------------
  280.  
  281. Version 1.4 - Released : 10th October, 1992
  282.  
  283. * Changed GetObjectName to GetObjectNameID (NWMISC.TPU) so that the objectid
  284.   is now also returned.
  285.  
  286. * Changed the inner workings of certain parts of the Misc Servvices unit
  287.   (NWMISC.TPU). This should be transparent to everyone.  The MiscFuncOBJ now
  288.   uses less memory.
  289.  
  290. * Removed the parameter ConnectionID from LoginToFileServer in Connection
  291.   unit (NWCONN.TPU) as it is not used.
  292.  
  293. * Changed GetFileServerMiscInformation (NWFSSERV.TPU) to return the fourth
  294.   dynamic memory pool in Netware 286 v2.2
  295.  
  296. * Fixed bug in GetNetworkSerialNumber (NWSERIAL.TPU) so that it properly
  297.   returns the requested information.
  298.  
  299. * Changed ConnectionID in SetCapturePrintQueue (NWPRINT.TPU) to be a WORD
  300.   instead of a BYTE.
  301.  
  302. * Changed GetNetwareShellVersion (NWWRKSTN.TPU) to return the shell type.
  303.  
  304. * Added GetTaskMode & SetTaskMode to WorkStation Services (NWWRKSTN.TPU)
  305.  
  306. * Fixed bugs in SetDefaultCaptureFlags/SetSpecificCaptureFlags (NWPRINT.TPU)
  307.   which caused incorrect setting of the Timeout count.
  308.  
  309. * Changed DriveHandle to DirectoryHandle in SpecifyCaptureFile (NWPRINT.TPU).
  310.  
  311. * Added SetShowDots (NWWRKSTN.TPU) to allow the switching of whether or not
  312.   '.' and '..' are seen in directory listings (useful for Windows).
  313.  
  314. * Changed SetDefaultCaptureFlags, SetSpecificCaptureFlags (NWPRINT.TPU) to use
  315.   Capture_Flags structure instead of Set_Capture_Flags.
  316.  
  317. * Modified the PrinterSetupBuffer, PrinterResetBuffer in Print Services.
  318.   (NWPRINT.TPU).
  319.  
  320. * Added SetNWCaptureFlags to Misc Services (NWMISC.TPU).  This procedure sets
  321.   the default for the structure Capture_Flags.
  322.  
  323. * Added GetPrintQueueDirectoryID to Misc Services (NWMISC.TPU).
  324.  
  325. * Fixed bug in GetFileServerLoginStatus (NWFSSERV.TPU) so that it returns
  326.   correct information.
  327.  
  328. --------------------------------------------------------------------------------
  329.  
  330. Version 1.3 - Released : 2nd March, 1992
  331.  
  332. * Added MakeSupervisor, RevokeSupervisor to Misc Services unit (NWMISC.TPU)
  333.   Allows programmer to easily make an object security equivalent or not to the
  334.   Supervisor.
  335.  
  336. --------------------------------------------------------------------------------
  337.  
  338. Version 1.2 - Not Released : Internal version
  339.  
  340. * Finally completed FileServer Services unit (NWFSSERV.TPU).
  341.  
  342. * Added several more examples which show how easy it is to replicate Novell
  343.   utilities.
  344.  
  345. * MapV3TrusteeRightsToV2 (NWDIR.TPU) fixed bug which gave incorrect info.
  346.  
  347. * Changed _NWMapWildPath (NETWARE.TPU) to a function.
  348.  
  349. * Moved all table pointers out of NetwareOBJ.
  350.  
  351. --------------------------------------------------------------------------------
  352.  
  353. Version 1.1 - Not Released : Internal version
  354.  
  355. * Added a complete new suite of API's - Queue services.  The only difference
  356.   from Netware is that no file handles are returned, instead a FileOfByte
  357.   type is used.
  358.  
  359. * Added more API's throughout.
  360.  
  361. * Added AutoLogin function to NWMISC unit.
  362.  
  363. * Moved FileServerNameTable & ServerConnectionIDTable out of NetwareOBJ.
  364.  
  365. * Changed variable FileSize to SizeOfFile in certain units.
  366.  
  367. * Started the documentation in real anger.
  368.  
  369. * FileServerServices (NWFSSERV.TPU) - Possible bug in Netware
  370.  
  371.     GetExtendedFileAttributes is meant to return the FileAttributes and a
  372.     result.  When you call the function both the FileAttributes and the result
  373.     are the same value.
  374.  
  375. --------------------------------------------------------------------------------
  376.  
  377. Version 1.0b - Released 4th December, 1991
  378.  
  379. * First real release of the library for Turbo Pascal 6.0.
  380. * Certain limitations do exist :
  381.  
  382.     You cannot use any method on a file server that has ENCRYPTED PASSWORDS
  383.     set to on.
  384.  
  385. --------------------------------------------------------------------------------
  386.  
  387. Antonio Covelli